class welcome_gui :
    _welcome_image = 'res/so_ran.gif'
    def __init__ ( self , mediator ) :
        self . _mediator = mediator
        self . _application_window = None
        self . _created_frame = None
        self . _created_label = None
        self . _created_image = None
    def application_window_reply ( self , window ) :
        self . _application_window = window
    def gui_create_frame_reply ( self , frame ) :
        self . _created_frame = frame
    def gui_create_label_reply ( self , label ) :
        self . _created_label = label
    def gui_create_image_reply ( self , image ) :
        self . _created_image = image
    def show_welcome ( self ) :
        self . _create_frame ( )
        self . _add_title_label ( )
        self . _add_header_label ( )
        self . _add_welcome_image ( )
        self . _add_footing_label ( )
    def hide_welcome ( self ) :
        self . _mediator . gui_destroy_frame ( self . _frame )
        del self . _image
        del self . _frame
        del self . _created_frame
        del self . _created_label
        del self . _created_image
    def _create_frame ( self ) :
        self . _mediator . application_window_request ( )
        self . _mediator . gui_create_frame_request ( self . _application_window )
        self . _frame = self . _created_frame
        self . _mediator . gui_pack ( self . _frame , padx = 10 , pady = 10 )
    def _add_title_label ( self ) :
        self . _mediator . gui_create_label_request ( self . _frame , self . _mediator . localization_welcome_title ( ) )
        self . _mediator . gui_pack ( self . _created_label , side = self . _mediator . gui_side_top ( ) )
    def _add_header_label ( self ) :
        self . _mediator . gui_create_label_request ( self . _frame , self . _mediator . localization_welcome_header ( ) )
        self . _mediator . gui_pack ( self . _created_label , side = self . _mediator . gui_side_top ( ) )
    def _add_welcome_image ( self ) :
        self . _mediator . gui_create_image_request ( self . _frame , self . _mediator . get_resource ( welcome_gui . _welcome_image ) )
        self . _image = self . _created_image
        self . _mediator . gui_pack ( self . _image , side = self . _mediator . gui_side_top ( ) )
    def _add_footing_label ( self ) :
        self . _mediator . gui_create_label_request ( self . _frame , self . _mediator . localization_welcome_footing ( ) )
        self . _mediator . gui_pack ( self . _created_label , side = self . _mediator . gui_side_top ( ) )
